<template>
    <view>
        <button @tap="startRecord">开始录音</button>
        <button @tap="endRecord">停止录音</button>
        <button @tap="playVoice">播放录音</button>
    </view>
</template>
<script>
	export default {
		data(){
			return{
			recorderManager: {},
			innerAudioContext: {},
	        voicePath: ''
		}
		},
		onLoad(options) {
			this.recorderManager = uni.getRecorderManager();
			this.innerAudioContext = uni.createInnerAudioContext();
			
			// 为了防止苹果手机静音无法播放
			// uni.setInnerAudioOption({  
			// 	obeyMuteSwitch: false  
			// });
			
			this.innerAudioContext.autoplay = true;
			
			console.log("uni.getRecorderManager()",uni.getRecorderManager())
			let self = this;
			this.recorderManager.onStop(function (res) {
				console.log('recorder stop' + JSON.stringify(res));
				self.voicePath = res.tempFilePath;
			});
		},
		methods: {
			startRecord() {
				console.log('开始录音');
				this.recorderManager.start();
			},
			endRecord() {
				console.log('录音结束');
				this.recorderManager.stop();
			},
			playVoice() {
				console.log('播放录音');
				console.log('this.voicePath',this.voicePath);
	 
				if (this.voicePath) {
					this.innerAudioContext.src = this.voicePath;
					this.innerAudioContext.play();
				}
			},
		}
	}
</script>